home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
PC Answers 2002 January
/
PC Answers January 2002.7z
/
PC Answers January 2002.bin
/
graphics
/
freepixl
/
_SETUP.1
/
Controls.pxl
< prev
next >
Wrap
Text File
|
1998-11-06
|
5KB
|
218 lines
Initialize:
Title$ = "Trackbars and other Controls"
UseCaption(Title$)
UseCoordinates(PIXEL)
SetColorPalette(BITMAP)
UseBackground(TRANSPARENT,166,166,166)
DrawBackground
WinLocate(Title$,200,100,720,390,Res)
WinGetClientRect("",cx1,cy1,cx2,cy2)
DirGet(SourceDir$)
ImageDir$ = SourceDir$
Image01$ = SourceDir$ + "\brsfc754.bmp"
OldRed = 0
OldGreen = 0
OldBlue = 0
WinShow(Title$,TOPMOST,Res)
InfoMenu(REMOVE)
WaitInput(100)
SetMenu("E&xit!",Leave,
ENDPOPUP,
"&Testing",IGNORE,
"Trackbars",Make_Trackbars,
"RetrieveTrackbars",RetrieveTrackbars,
"Reset Trackbar Range",ResetTrackbarRange,
"Reset Trackbar Position",ResetTrackbarPosition,
"Group Trackbars",GroupTrackBars,
"Ungroup Trackbars",UnGroupTrackBars,
"Delete Trackbars",DeleteTrackbars,
ENDPOPUP)
Wait_for_Input:
WaitInput()
Leave:
End
Make_Trackbars:
UseFont("Arial",7,15,NOBOLD,NOITALIC,NOUNDERLINE,0,0,0)
DrawText(12,4,"Red") DrawText(52,4,"Green") DrawText(108,4,"Blue")
DrawText(300,4,"Font Size")
Trackbar(0,20,49,170,F_VERT,BOTH, 0,255, 25, "", TBnumber3, DrawRGBr)
Trackbar(50,20,99,170,F_VERT,BOTH, 0,255, 25, "", TBnumber4, DrawRGBg)
Trackbar(100,20,149,170,F_VERT,BOTH,0, 255, 25, "", TBnumber5, DrawRGBb)
Trackbar(300,20,349,170,F_VERT,BOTH, 5, 36, 4, "",TBnumber6, DrawTestFont)
GoSub SubDrawRGB
Goto Wait_for_Input
Dummy:
{Beep}
Goto Wait_for_Input
DrawTestFont:
UseBackground(OPAQUE,166,166,166)
TrackbarGetValue(TBnumber3,Red)
TrackbarGetValue(TBnumber4,Green)
TrackbarGetValue(TBnumber5,Blue)
TrackbarGetValue(TBnumber6,Vsize)
UseFont("Arial",7,15,NOBOLD,NOITALIC,NOUNDERLINE,0,0,0)
Str(Vsize,Vsize$) Vsize$ = Vsize$ + " "
DrawText(310,172,Vsize$)
UseFont("Arial",0,Vsize,NOBOLD,NOITALIC,NOUNDERLINE, Red, Green, Blue)
UsePen(NULL,1,0,0,0)
UseBrush(SOLID,166,166,166)
If OldSize > Vsize Then DrawRectangle(200,200,500,280)
DrawText(200,200,"Sample Text String !")
OldSize = Vsize
Goto Wait_for_Input
GroupTrackBars:
TBflag = 1
Goto Wait_for_Input
UnGroupTrackBars:
TBflag = 0
Goto Wait_for_Input
DrawRGBr:
rFlag = 1
gFlag = 0
bFlag = 0
Goto DrawRGB
DrawRGBg:
rFlag = 0
gFlag = 1
bFlag = 0
Goto DrawRGB
DrawRGBb:
rFlag = 0
gFlag = 0
bFlag = 1
DrawRGB:
UseBackground(OPAQUE,166,166,166)
DrawNumber(10,192,RFlag)
DrawNumber(60,192,GFlag)
DrawNumber(110,192,BFlag)
If TBflag = 1
GoSub SubDrawRGBgroup
Endif
GoSub SubDrawRGB
Goto Wait_for_Input
SubDrawRGB:
UseBackground(OPAQUE,166,166,166)
TrackbarGetValue(TBnumber3,Red)
TrackbarGetValue(TBnumber4,Green)
TrackbarGetValue(TBnumber5,Blue)
Str(Red,Red$) Str(Green,Green$) Str(Blue,Blue$)
If Red < 99 Then Red$ = Red$ + " "
If Green < 99 Then Green$ = Green$ + " "
If Blue < 99 Then Blue$ = Blue$ + " "
UseFont("Arial",7,15,NOBOLD,NOITALIC,NOUNDERLINE,0,0,0)
DrawText(10,172,Red$)
DrawText(60,172,Green$)
DrawText(110,172,Blue$)
UseFont("Arial",0,Vsize,NOBOLD,NOITALIC,NOUNDERLINE, Red, Green, Blue)
DrawText(200,200,"Sample Text String !")
UseBackground(TRANSPARENT,166,166,166)
UsePen(SOLID,1,0,0,0)
UseBrush(SOLID,Red,Green,Blue)
DrawRectangle(150,20,200,170)
Return
SubDrawRGBgroup:
UseBackground(OPAQUE,166,166,166)
TrackbarGetValue(TBnumber3,Red)
TrackbarGetValue(TBnumber4,Green)
TrackbarGetValue(TBnumber5,Blue)
If rFlag = 1
Diff = Red - OldRed
Green += Diff
Blue += Diff
If Green < 0 Then Green = 0
If Green > 255 Then Green = 255
If Blue < 0 Then Blue = 0
If Blue > 255 Then Blue = 255
TrackbarSetPosition(TBnumber4,Green)
TrackbarSetPosition(TBnumber5,Blue)
Endif
If gFlag = 1
Diff =Green - OldGreen
Red += Diff
Blue += Diff
If Red < 1 Then Red = 0
If Red > 255 Then Red = 255
If Blue < 0 Then Blue = 0
If Blue > 255 Then Blue = 255
TrackbarSetPosition(TBnumber3,Red)
TrackbarSetPosition(TBnumber5,Blue)
Endif
If bFlag = 1
Diff = Blue - OldBlue
Green += Diff
Red += Diff
If Green < 0 Then Green = 0
If Green > 255 Then Green = 255
If Red < 2 Then Red = 0
If Red > 255 Then Red = 255
TrackbarSetPosition(TBnumber3,Red)
TrackbarSetPosition(TBnumber4,Green)
Endif
OldRed = Red
OldGreen = Green
OldBlue = Blue
Return
RetrieveTrackbars:
DrawBackground
TrackbarGetValue(TBnumber1,TB1)
TrackbarGetValue(TBnumber2,TB2)
DrawNumber(310,110,TB1)
DrawNumber(310,210,TB2)
Goto Wait_for_Input
ResetTrackbarRange:
TrackbarSetRange(TBnumber1,-200,400,75)
Goto Wait_for_Input
ResetTrackbarPosition:
For Value = 10 To 255 By 10
TrackbarSetPosition(TBnumber3,Value)
TrackbarSetPosition(TBnumber4,Value)
TrackbarSetPosition(TBnumber5,Value)
GoSub SubDrawRGB
Next
Goto Wait_for_Input
DeleteTrackbars:
TrackbarRemove(0)
DrawBackground
{ TrackbarRemove(TBnumber2)
TrackbarRemove(TBnumber3)
TrackbarRemove(TBnumber4)
}
Goto Wait_for_Input